home *** CD-ROM | disk | FTP | other *** search
/ Aminet 2 / Aminet AMIGA CDROM (1994)(Walnut Creek)[Feb 1994][W.O. 44790-1].iso / Aminet / util / gnu / groff_src.lha / Groff-1.07 / Makefile.in < prev    next >
Makefile  |  1993-02-22  |  12KB  |  373 lines

  1. # Copyright (C) 1989, 1990, 1991, 1992, 1993 Free Software Foundation, Inc.
  2. #      Written by James Clark (jjc@jclark.com)
  3. # This file is part of groff.
  4. # groff is free software; you can redistribute it and/or modify it under
  5. # the terms of the GNU General Public License as published by the Free
  6. # Software Foundation; either version 2, or (at your option) any later
  7. # version.
  8. # groff is distributed in the hope that it will be useful, but WITHOUT ANY
  9. # WARRANTY; without even the implied warranty of MERCHANTABILITY or
  10. # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  11. # for more details.
  12. # You should have received a copy of the GNU General Public License along
  13. # with groff; see the file COPYING.  If not, write to the Free Software
  14. # Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
  15.  
  16. # Define `page' to be letter if your PostScript printer uses 8.5x11
  17. # paper (USA) and define it to be A4, if it uses A4 paper (rest of the
  18. # world).
  19. PAGE=@PAGE@
  20.  
  21. # Normally the Postscript driver, grops, produces output that conforms
  22. # to version 3.0 of the Adobe Document Structuring Conventions.
  23. # Unfortunately some spoolers and previewers can't handle such output.
  24. # The BROKEN_SPOOLER_FLAGS variable tells grops what it should do to
  25. # make its output acceptable to such programs.  This variable controls
  26. # only the default behaviour of grops; the behaviour can be changed at
  27. # runtime by the grops -b option (and so by groff -P-b).
  28. # Use a value of 0 if your spoolers and previewers are able to handle
  29. # conforming PostScript correctly.
  30. # Add 1 if no %%{Begin,End}DocumentSetup comments should be generated;
  31. # this is needed for early versions of TranScript that get confused by
  32. # anything between the %%EndProlog line and the first %%Page: comment.
  33. # Add 2 if lines in included files beginning with %! should be
  34. # stripped out; this is needed for the OpenWindows 2.0 pageview previewer.
  35. # Add 4 if %%Page, %%Trailer and %%EndProlog comments should be
  36. # stripped out of included files; this is needed for spoolers that
  37. # don't understand the %%{Begin,End}Document comments. I suspect this
  38. # includes early versions of TranScript.
  39. BROKEN_SPOOLER_FLAGS=@BROKEN_SPOOLER_FLAGS@
  40.  
  41. # DEVICE is the default device.
  42. DEVICE=ps
  43.  
  44. # PSPRINT is the command to use for printing a PostScript file,
  45. # for example `lpr'.
  46. PSPRINT=@PSPRINT@
  47.  
  48. # DVIPRINT is the command to use for printing a TeX dvi file,
  49. # for example `lpr -d'.
  50. DVIPRINT=@DVIPRINT@
  51.  
  52. # Prefix for names of programs that have Unix counterparts.
  53. # For example, if `g' is `g' then troff will be installed as
  54. # gtroff.  This doesn't affect programs like grops or groff that have
  55. # no Unix counterparts.  Note that the groff versions of eqn and tbl
  56. # will not work with Unix troff.  This is also use in the definitions
  57. # of tmac_s and tmac_m.
  58. g=g
  59.  
  60. # The groff ms macros will be available as -m$(tmac_s).
  61. # If you use `tmac_s=s', you can use the Unix ms macros by using
  62. # groff -ms -M/usr/lib/tmac.
  63. tmac_s=$(g)s
  64.  
  65. # Similarily, the groff mm macros will be available as -m$(tmac_m).
  66. tmac_m=$(g)m
  67.  
  68. # Common prefix for installation directories.
  69. # Used in definitions of exec_prefix, datasubdir, fontpath, manroot.
  70. # This must already exist when you do make install.
  71. prefix=/usr/local
  72.  
  73. exec_prefix=$(prefix)
  74.  
  75. # bindir says where to install executables.
  76. bindir=$(exec_prefix)/bin
  77.  
  78. # datasubdir says where to install data files
  79. datadir=$(prefix)/lib
  80. datasubdir=$(datadir)/groff
  81.  
  82. # fontdir says where to install dev*/*.
  83. fontdir=$(datasubdir)/font
  84.  
  85. # fontpath says where to look for dev*/*.
  86. fontpath=.:$(fontdir):$(prefix)/lib/font:/usr/lib/font
  87.  
  88. # tmacdir says where to install macros.
  89. tmacdir=$(datasubdir)/tmac
  90.  
  91. # tmacpath says where to look for macro files.
  92. tmacpath=.:$(tmacdir):/usr/lib/tmac
  93.  
  94. # Extension to be used for refer index files.  Index files are not
  95. # shareable between different architectures, so you might want to use
  96. # different suffixes for different architectures.  Choose an extension
  97. # that doesn't conflict with refer or any other indexing program.
  98. indexext=.i
  99.  
  100. # Directory containing the default index for refer.
  101. indexdir=/usr/dict/papers
  102.  
  103. # The filename (without suffix) of the default index for refer.
  104. indexname=Ind
  105.  
  106. # common_words_file is a file containing a list of common words.
  107. # If your system provides /usr/lib/eign it will be copied onto this,
  108. # otherwise the supplied eign file will be used.
  109. common_words_file=$(datasubdir)/eign
  110.  
  111. # manroot is the root of the man page directory tree.
  112. manroot=$(prefix)/man
  113.  
  114. # man1ext is the man section for user commands.
  115. man1ext=1
  116. man1dir=$(manroot)/man$(man1ext)
  117.  
  118. # man5ext is the man section for file formats.
  119. man5ext=5
  120. man5dir=$(manroot)/man$(man5ext)
  121.  
  122. # man7ext is the man section for macros.
  123. man7ext=7
  124. man7dir=$(manroot)/man$(man7ext)
  125.  
  126. # DEFINES should include the following:
  127. # -DHAVE_MMAP            if you have mmap() and <sys/mman.h>
  128. # -DCFRONT_ANSI_BUG        if you're using cfront 2.0 (or later?) with
  129. #                an ANSI C compiler
  130. # -DCOOKIE_BUG            if you're using gcc/g++ 2.[012] (you should
  131. #                upgrade to 2.3).
  132. # -DARRAY_DELETE_NEEDS_SIZE    if your C++ doesn't understand `delete []'
  133. # -DHAVE_SYS_SIGLIST        if you have sys_siglist[]
  134. # -DWCOREFLAG=0200        if the 0200 bit of the status returned by
  135. #                wait() indicates whether a core image was
  136. #                produced for a process that was terminated
  137. #                by a signal
  138. # -DHAVE_UNISTD_H        if you have <unistd.h>
  139. # -DHAVE_CC_UNISTD_H        if you have a C++ <unistd.h>
  140. # -DHAVE_DIRENT_H        if you have <dirent.h>
  141. # -DHAVE_LIMITS_H        if you have <limits.h>
  142. # -DHAVE_CC_LIMITS_H        if you have a C++ <limits.h>
  143. # -DHAVE_SYS_DIR_H        if you have <sys/dir.h>
  144. # -DHAVE_STDLIB_H        if you have <stdlib.h>
  145. # -DHAVE_VFORK_H        if you have <vfork.h>
  146. # -Dvfork=fork            if you don't have a working vfork()
  147. # -DHAVE_RENAME            if you have rename()
  148. # -DHAVE_MKSTEMP        if you have mkstemp()
  149. # -DSTDLIB_H_DECLARES_GETOPT    if your C++ <stdlib.h> declares getopt()
  150. # -DUNISTD_H_DECLARES_GETOPT    if your C++ <unistd.h> declares getopt()
  151. # -DSTDLIB_H_DECLARES_PUTENV    if your C++ <stdlib.h> declares putenv()
  152. # -DTRADITIONAL_CPP        if your C++ compiler uses a traditional
  153. #                (Reiser) preprocessor.
  154. # -DLONG_FOR_TIME_T        if localtime() takes a long * not a time_t *
  155. # -DHAVE_STRUCT_EXCEPTION    if <math.h> defines struct exception
  156. # -DRETSIGTYPE=int        if signal handlers return int not void    
  157. DEFINES=@DEFS@
  158.  
  159. # Include fmod.o, strtol.o, getcwd.o, strerror.o, putenv.o  in LIBOBJS if
  160. # your C library is missing the corresponding function.
  161. LIBOBJS=@LIBOBJS@
  162.  
  163. # CCC is the compiler for C++ (.cc) files.
  164. CCC=@CCC@
  165. CC=@CC@
  166. # CCDEFINES are definitions for C++ compilations.
  167. CCDEFINES=$(DEFINES)
  168. # CDEFINES are definitions for C compilations.
  169. CDEFINES=$(DEFINES)
  170.  
  171. DEBUG=-g
  172. CCFLAGS=$(DEBUG)
  173. CFLAGS=$(DEBUG)
  174. YACC=@YACC@
  175. YACCFLAGS=-v
  176.  
  177. LIBS=@LIBS@
  178. CCLIBS=@CCLIBS@
  179. RANLIB=@RANLIB@
  180. INSTALL=@INSTALL@
  181. INSTALL_PROGRAM=@INSTALL_PROGRAM@
  182. INSTALL_DATA=@INSTALL_DATA@
  183. LN_S=@LN_S@
  184. AR=ar
  185. ETAGS=etags
  186. ETAGSFLAGS=
  187. # Flag that tells etags to assume C++.
  188. ETAGSCCFLAG=@ETAGSCCFLAG@
  189. # Full path to perl.
  190. PERLPATH=@PERLPATH@
  191.  
  192. srcdir = @srcdir@
  193. VPATH = @srcdir@
  194.  
  195. MDEFINES="PAGE=$(PAGE)" "BROKEN_SPOOLER_FLAGS=$(BROKEN_SPOOLER_FLAGS)" \
  196.   "DEVICE=$(DEVICE)" "PSPRINT=$(PSPRINT)" "DVIPRINT=$(DVIPRINT)" \
  197.   "prefix=$(prefix)" "exec_prefix=$(exec_prefix)" "bindir=$(bindir)" \
  198.   "g=$(g)" "datadir=$(datadir)" "datasubdir=$(datasubdir)" \
  199.   "fontdir=$(fontdir)" "fontpath=$(fontpath)" \
  200.   "tmacdir=$(tmacdir)" "tmacpath=$(tmacpath)" \
  201.   "indexext=$(indexext)" "indexdir=$(indexdir)" \
  202.   "indexname=$(indexname)" "common_words_file=$(common_words_file)" \
  203.   "manroot=$(manroot)" "man1ext=$(man1ext)" "man1dir=$(man1dir)" \
  204.   "man5ext=$(man5ext)" "man5dir=$(man5dir)" \
  205.   "man7ext=$(man7ext)" "man7dir=$(man7dir)" \
  206.   "tmac_s=$(tmac_s)" "tmac_m=$(tmac_m)" \
  207.   "CCC=$(CCC)" "CC=$(CC)" "CCDEFINES=$(CCDEFINES)" "CDEFINES=$(CDEFINES)" \
  208.   "CCFLAGS=$(CCFLAGS)" "CFLAGS=$(CFLAGS)" \
  209.   "YACC=$(YACC)" "YACCFLAGS=$(YACCFLAGS)" \
  210.   "LIBS=$(LIBS)" "CCLIBS=$(CCLIBS)" "LIBOBJS=$(LIBOBJS)" \
  211.   "RANLIB=$(RANLIB)" "AR=$(AR)" \
  212.   "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" "INSTALL_DATA=$(INSTALL_DATA)" \
  213.   "ETAGS=$(ETAGS)" "ETAGSFLAGS=$(ETAGSFLAGS)" "ETAGSCCFLAG=$(ETAGSCCFLAG)" \
  214.   "PERLPATH=$(PERLPATH)" 
  215.  
  216. SHELL=/bin/sh
  217. INCDIRS=include
  218. LIBDIRS=libgroff libdriver libbib
  219. CCPROGDIRS=groff troff tbl pic eqn grops grotty grodvi tfmtodit \
  220.   refer lookbib indxbib lkbib soelim addftinfo
  221. CPROGDIRS=pfbtops psbb
  222. PROGDIRS=$(CCPROGDIRS) $(CPROGDIRS)
  223. DEVDIRS=devps devdvi devascii devlatin1 devX75 devX75-12 devX100 devX100-12
  224. OTHERDIRS=man tmac afmtodit grog nroff mm
  225. ALLDIRS=$(INCDIRS) $(LIBDIRS) $(PROGDIRS) $(DEVDIRS) $(OTHERDIRS)
  226. EXTRADIRS=devps/generate devdvi/generate xditview doc
  227. DISTDIRS=$(ALLDIRS) $(EXTRADIRS)
  228. TARGETS=all install install_bin install_data clean distclean mostlyclean \
  229.   realclean extraclean distfiles TAGS depend uninstall_sub
  230.  
  231. do=all
  232. dodirs=$(ALLDIRS) dot
  233. # Default target for subdir_Makefile
  234. subdir=troff
  235.  
  236.  
  237. $(TARGETS):
  238.     @$(MAKE) $(MDEFINES) do=$@ $(dodirs)
  239.  
  240. dot: FORCE
  241.     @$(MAKE) $(MDEFINES) srcdir=$(srcdir) VPATH=$(srcdir) \
  242.         -f $(srcdir)/Makefile.comm -f $(srcdir)/Makefile.sub $(do)
  243.     
  244. $(LIBDIRS): FORCE
  245.     @if test $(srcdir) = .; \
  246.     then srcdir=.; \
  247.     else srcdir=`cd $(srcdir); pwd`/$@; \
  248.     fi; \
  249.     echo Making $(do) in $@; \
  250.     test -d $@ || mkdir $@; \
  251.     cd $@; \
  252.     $(MAKE) $(MDEFINES) srcdir=$$srcdir VPATH=$$srcdir \
  253.         -f $$srcdir/../Makefile.comm -f $$srcdir/Makefile.sub \
  254.             -f $$srcdir/../Makefile.lib -f $$srcdir/Makefile.dep $(do)
  255.  
  256. $(CPROGDIRS): FORCE
  257.     @if test $(srcdir) = .; \
  258.     then srcdir=.; \
  259.     else srcdir=`cd $(srcdir); pwd`/$@; \
  260.     fi; \
  261.     echo Making $(do) in $@; \
  262.     test -d $@ || mkdir $@; \
  263.     cd $@; \
  264.     $(MAKE) $(MDEFINES) srcdir=$$srcdir VPATH=$$srcdir \
  265.         -f $$srcdir/../Makefile.comm -f $$srcdir/Makefile.sub \
  266.             -f $$srcdir/../Makefile.cpg -f $$srcdir/Makefile.dep $(do)
  267.  
  268. $(CCPROGDIRS): FORCE
  269.     @if test $(srcdir) = .; \
  270.     then srcdir=.; \
  271.     else srcdir=`cd $(srcdir); pwd`/$@; \
  272.     fi; \
  273.     echo Making $(do) in $@; \
  274.     test -d $@ || mkdir $@; \
  275.     cd $@; \
  276.     $(MAKE) $(MDEFINES) srcdir=$$srcdir VPATH=$$srcdir \
  277.         -f $$srcdir/../Makefile.comm -f $$srcdir/Makefile.sub \
  278.             -f $$srcdir/../Makefile.ccpg -f $$srcdir/Makefile.dep $(do)
  279.  
  280. $(DEVDIRS): FORCE
  281.     @if test $(srcdir) = .; \
  282.     then srcdir=.; \
  283.     else srcdir=`cd $(srcdir); pwd`/$@; \
  284.     fi; \
  285.     echo Making $(do) in $@; \
  286.     test -d $@ || mkdir $@; \
  287.     cd $@; \
  288.     $(MAKE) $(MDEFINES) srcdir=$$srcdir VPATH=$$srcdir \
  289.         -f $$srcdir/../Makefile.comm -f $$srcdir/Makefile.sub \
  290.         -f $$srcdir/../Makefile.dev $(do)
  291.  
  292. $(INCDIRS) $(OTHERDIRS): FORCE
  293.     @if test $(srcdir) = .; \
  294.     then srcdir=.; \
  295.     else srcdir=`cd $(srcdir); pwd`/$@; \
  296.     fi; \
  297.     echo Making $(do) in $@; \
  298.     test -d $@ || mkdir $@; \
  299.     cd $@; \
  300.     $(MAKE) $(MDEFINES) srcdir=$$srcdir VPATH=$$srcdir \
  301.         -f $$srcdir/../Makefile.comm -f $$srcdir/Makefile.sub \
  302.             -f $$srcdir/../Makefile.man $(do)
  303.  
  304. version=`cat $(srcdir)/VERSION`
  305.  
  306. .PHONY: dist
  307. dist:
  308.     -rm -fr tmp
  309.     mkdir tmp
  310.     for d in $(DISTDIRS); do \
  311.       mkdir    tmp/$$d; \
  312.     done
  313.     srcdir=`cd $(srcdir); pwd`; \
  314.     cd tmp; \
  315.     $(LN_S) ../Makefile .; \
  316.     $(LN_S) $$srcdir/* . 2>/dev/null; \
  317.     for d in $(DISTDIRS); do \
  318.       (cd $$d; $(LN_S) $$srcdir/$$d/* . 2>/dev/null); \
  319.     done; \
  320.     $(MAKE) srcdir=$$srcdir VPATH=$$srcdir extraclean; \
  321.     for d in $(EXTRADIRS); do \
  322.       (cd $$d; $(MAKE) extraclean); \
  323.     done; \
  324.     rm -f Makefile; \
  325.     $(LN_S) $$srcdir/Makefile.init Makefile
  326.     mv tmp groff-$(version)
  327.     tar cfh - groff-$(version) | gzip -c >groff-$(version).tar.z
  328.     rm -fr groff-$(version)
  329.  
  330. # $(PROGDIRS): libgroff
  331. # grops grotty grodvi: libdriver
  332. # refer lookbib indxbib lkbib: libbib
  333. # $(LIBDIRS) $(PROGDIRS): include
  334.  
  335. .PHONY: $(ALLDIRS) dot $(TARGETS) FORCE
  336.  
  337. subdir_Makefile: Makefile.cfg
  338.     $(MAKE) do=Makefile $(subdir)
  339.  
  340. Makefile.cfg: Makefile
  341.     >Makefile.cfg
  342.     for var in $(MDEFINES); do \
  343.       echo "$$var" >>Makefile.cfg; \
  344.     done
  345.  
  346. depend: srcdir_must_be_dot
  347.  
  348. .PHONY: srcdir_must_be_dot
  349. srcdir_must_be_dot:
  350.     @test "X$(srcdir)" = "X." \
  351.       || (echo This target can only be made in the source directory; \
  352.           exit 1)
  353.  
  354. Makefile: Makefile.in
  355.     $(SHELL) config.status
  356.  
  357. .PHONY: uninstall
  358. uninstall: uninstall_sub uninstall_dirs
  359.  
  360. .PHONY: uninstall_dirs
  361. uninstall_dirs:
  362. # Use rmdir here so that the directories are only removed if they're empty
  363.     -rmdir $(man1dir) $(man5dir) $(man7dir) $(manroot) \
  364.       $(tmacdir) $(fontdir) $(bindir) $(datasubdir) $(datadir)
  365.  
  366. FORCE:
  367.  
  368. .NOEXPORT:
  369.